package prh25.biblioteca.service;

import java.io.Serializable;
import java.util.List;

import prh25.biblioteca.entity.Coordenador;
import prh25.biblioteca.entity.Documento;
import prh25.biblioteca.entity.Usuario;

public interface CoordenadorService extends Serializable{

	/**
	 * Salva um coordenador no banco de dados.
	 * @param coordenador - Coordenador a ser inserido no banco de dados.
	 * @return Id do coordenador se foi inserido com sucesso.
	 */
	public Integer criar(Coordenador coordenador);
	
	/**
	 * Busca os usuarios por uma palavra de pesquisa.
	 * @param pesquisa - Palavra a ser procurada no nome dos usuarios.
	 * @return - Uma lista de usuarios que contenham a palavra pesquisada.
	 */
	public List<Usuario> listarUsuarios(String pesquisa);
	
	public Usuario setSituacaoUsuario(String login, boolean situacao);
	
	/**
	 * Deleta um usuario do banco de dados.
	 * @param login - O login do usuario que sera excluido.
	 */
	public boolean excluirUsuario(String login);
	
	/**
	 * Salva um arquivo no banco de dados.
	 * @param documento - Documento a ser salvo no banco de dados.
	 * @param diretorioAplicacao - diretorio onde se encontra o arquivo.
	 * @return True se o arquivo foi salvo com sucesso, false caso contrario.
	 */
	public boolean finalizarEnvioArquivo(Documento documento, String diretorioAplicacao);
	
	
}
